#include <stdio.h>
#include <string.h>

// 指针控制字符串
int main()
{
    char a[100] = "hello world";
    char *p = a;//指针变量p,指向字符串数组的首个地址

    int len = strlen(a);//字符串数组的长度
    printf("%d\n", len);

    printf("%p\n", a);
    printf("%p\n", p);

    char *p1 = a;//p1，指向字符串数组的首个地址
    printf("%p\n", p1);

    p1 += len - 1;//字符串数组的最后一个位是'\0'
    printf("%p\n", p1);//p1指向字符串数组的倒数第二个字符'd'

    // 首位比较，置换位置,知道最中间，就结束循环
    while(p < p1)
    {
        char tmp = *p;
        *p = *p1;
        *p1 = tmp;
        p1--;
        p++;
    }
    printf("--------------\n");
    //打印字符串数组a
    printf("%s\n", a);
    return 0;
}

